Currently, many systems provide the ability for a communication endpoint (e.g., a personal computer or smartphone) to communicate with a communication system. Based on the operating system of the communication endpoint, different Software Development Kits (SDKs) are used by the communication endpoints to interface with the communication system. For example, a separate SDK is necessary for Apple's iOS® versus a communication endpoint that uses an Android® operating system.
Developers of communication services on these platforms look to provide custom services that work in conjunction with the communication system based on the SDKs. In addition, developers have a need to provide additional features that may not be currently supported by the communication system/SDKs. In order to add custom features, it is often difficult for developers to provide custom services because the developers only have access to services exposed by existing Application Programming Interfaces (APIs) in the SDKs.